package com.moliku.insurance.model.dto.huaan.insure;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

@Data
@ApiModel("投保信息")
public class HuaAnPolicyParam {

    /**
     *外部业务流水号
     *幂等控制字段
     */
    @ApiModelProperty("外部业务流水号")
    @NotBlank(message ="外部业务流水号不能为空")
    private String businessNo;

    /**
     *实付总保费
     *分/单位
     */
    @ApiModelProperty("实付总保费")
    @NotNull(message ="实付总保费不能为空")
    private Number actualPremiumAmt;

    /**
     *投保份数
     *分/单位
     */
    @ApiModelProperty("投保份数")
    @NotNull(message ="投保份数不能为空")
    private Number insuredQuantity;

    /**
     *原始总保费
     *分/单位
     */
    @ApiModelProperty("原始总保费")
    @NotNull(message ="原始总保费不能为空")
    private Number originalPremiumAmt;

    /**
     *总保额
     *分/单位
     */
    @ApiModelProperty("总保额")
    @NotNull(message ="总保额不能为空")
    private Number totalInsuredAmt;

    /**
     *保险起始时间
     *yyyyMMddHHmmss
     */
    @ApiModelProperty("保险起始时间 yyyyMMddHHmmss")
    @NotNull(message ="保险起始时间不能为空")
    private String insuredBgnTime;

    /**
     *保险截止时间
     *yyyyMMddHHmmss
     */
    @ApiModelProperty("保险截止时间 yyyyMMddHHmmss")
    @NotNull(message ="保险截止时间不能为空")
    private String insuredEndTime;

    /**
     *投保时间
     *yyyyMMddHHmmss
     */
    @ApiModelProperty("投保时间 yyyyMMddHHmmss")
    @NotNull(message ="投保时间不能为空")
    private String appTime;
}
